

#  练习1 ：输入一行字符，分别统计出其中英文字母、空格、数字和其它字符的个数。
my_str = "dsf23r43490sfjdkf734 334$%^&*fjsdfsdf"
letter = 0
space = 0
number = 0
other = 0
for x in my_str:
    if x.isdigit():
        number += 1
        continue
    if x.isalpha():
        letter += 1
        continue
    if x.isspace():
        space += 1
        continue
    other += 1
print("letter=",letter)
print("number=",number)
print("space=",space)
print("other=",other)




#  练习2 ：定义一个字符串，判断该字符串是否是一个ip地址 ，“192.168.1.56”。
# ip的规则 ： "255.255.255.0"
ip_addr = "255.255.255.0"
lst = ip_addr.split(".")

for index,x in enumerate(lst):          # ['255','255','255','0']

    if len(lst) != 4:
        print("{}不是一个有效的ip地址".format(ip_addr))
        break

    if not x.isdigit():
        print("{}不是一个有效的ip地址".format(ip_addr))
        break

    if int(x) <0 or int(x) >255:
        print("{}不是一个有效的ip地址".format(ip_addr))
        break
    if index == 3:
        print("{}是一个有效的ip地址".format(ip_addr))


str = "192.a.0.b"
len = 0
flag = 1
for x in str.split("."):
    len += 1
    if int(x) >=0 and int(x) <= 255:
        flag = 1
    else:
        flag = 0
        break
if flag and len == 4:
    print("合法")
else:
    print("不合法")



